package com.ponhu.ea2.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @author zhaokai
 */
@Data
@ApiModel(value = "商品返回参数For订单")
public class ApiGoodsForOrderVo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "库存编码")
    private String inventoryCode;

    @ApiModelProperty(value = "商品ID")
    private Long goodsId;

    @ApiModelProperty(value = "货品ID")
    private Long inventoryId;

    @ApiModelProperty(value = "商品名称")
    private String goodsName;

    @ApiModelProperty(value = "品牌")
    private String brand;

    @ApiModelProperty(value = "类目")
    private String category;

    @ApiModelProperty(value = "规格")
    private String specs;

    @ApiModelProperty(value = "零售价")
    private BigDecimal retailPrice;

    @ApiModelProperty(value = "供货价")
    private BigDecimal supplyTaxPrice;

    @ApiModelProperty(value = "建议售价")
    private BigDecimal saleTaxPrice;

    @ApiModelProperty(value = "货品成本")
    private BigDecimal inventoryCost;

    @ApiModelProperty(value = "成色")
    private String quality;

    @ApiModelProperty(value = "成色值")
    private String qualityValue;

    @ApiModelProperty(value = "仓信息")
    private String warehouseInfo;

    @ApiModelProperty(value = "平台货品名称")
    private String inventoryName;

    @ApiModelProperty(value = "商品类型")
    private Integer inventoryType;

    @ApiModelProperty(value = "商品类型字符")
    private String inventoryTypeStr;

    @ApiModelProperty(value = "商品标（新品、二奢）")
    private OperationTypeEnum goodsType;

    @ApiModelProperty(value = "商品图片")
    private String imageDetail;

    @ApiModelProperty(value = "中检状态 1未中检，2中检已通过，3中检未通过")
    private Integer isDoneCcic;

    @ApiModelProperty(value = "鉴定师名字")
    private String appraiserName;

    @ApiModelProperty(value = "销售模式1以采定销，2以销定采")
    private Integer salesModel;

    @ApiModelProperty(value = "销售模式字符")
    private String salesModelStr;

    @ApiModelProperty(value = "品牌ID")
    private String brandId;

    @ApiModelProperty(value = "型号ID")
    private String modelId;

    @ApiModelProperty(value = "型号名称")
    private String modelName;

    @ApiModelProperty(value = "系列ID")
    private String seriesId;

    @ApiModelProperty(value = "系列名称")
    private String seriesName;

    @ApiModelProperty(value = "三级类目ID")
    private String categoryId;


    public enum OperationTypeEnum {

        NEW(2, "新品"),
        OLD(1, "二奢");

        /*SECONDHAND(1, "二奢"),
        NEW(2, "新品"),
        ;*/

        private Integer code;

        private String name;

        OperationTypeEnum(Integer code, String name) {
            this.code = code;
            this.name = name;
        }

        public Integer getCode() {
            return code;
        }

        public void setCode(Integer code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }
    }
}
